Systems and methods for managing product list subscriptions

ABSTRACT

This disclosure relates to systems and methods for managing product list subscriptions. In one embodiment, a method may be provided. The method may include determining, by a server comprising one or more processors, user profile information for a user, the user profile information indicating a book list to which the user is subscribed. The method may also include accessing the book list, wherein the book list comprises one or more book identifiers, a creator identifier for a creator of the book list, and a genre identifier. Furthermore, the method may include generating a recommendation for the user to purchase a book that that is classified by the genre identifier. Additionally, the method may include transmitting, to the user, the recommendation to purchase the book.

BACKGROUND

Online social media has become increasingly prevalent as a means forsharing information. In particular, users of social media frequentlyshare interests and hobbies with other users and friends. Accordingly,demand for improving techniques for sharing data within the framework ofonline social media has grown as well.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system for managing product list subscriptions inaccordance with one or more embodiments of the disclosure.

FIG. 2 illustrates a block diagram of product list information formanaging product list subscriptions in accordance with one or moreembodiments of the disclosure.

FIG. 3 illustrates a flow diagram for managing product listsubscriptions in accordance with one or more embodiments of thedisclosure.

FIG. 4 illustrates another flow diagram for managing product listsubscriptions in accordance with one or more embodiments of thedisclosure.

FIG. 5 illustrates another flow diagram for managing product listsubscriptions in accordance with one or more embodiments of thedisclosure.

Certain implementations will now be described more fully below withreference to the accompanying drawings, in which various implementationsand/or aspects are shown. However, various aspects may be implemented inmany different forms and should not be construed as limited to theimplementations set forth herein; rather, these implementations areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the disclosure to those skilled in the art.Like numbers in the figures refer to like elements throughout. Hence, ifa feature is used across several drawings, the number used to identifythe feature in the drawing where the feature first appeared will be usedin later drawings.

DETAILED DESCRIPTION

Described herein are systems and methods for managing product listsubscriptions. Broadly, the systems and methods described herein mayenable a user to create a product list, which may include one or moreproduct identifiers of the user's choosing. In some cases, the one ormore product identifiers may indicate the user's interest in certainproducts. The systems and methods described herein may also enable usersto subscribe to user-generated product lists. For instance, a user maycreate a book list (which may be a type of product list), which mayinclude one or more book identifiers. These book identifiers maycorrespond to books that the user is currently reading, the user haspurchased, and/or that the user considers particularly interesting. Oncea user has created the book list, the user may share the book list withother users. In some instances, in order to share the book list, ahyperlink may be generated for another user that when selected by thatuser, may cause a user device to display certain aspects of the booklist, such as the book identifiers, a creator identifier, and/or otherinformation. As will be appreciated by one or ordinary skill in the art,the user may be able to share the hyperlink to other users using varioustypes of communications, application programming interfaces (APIs),programs, social media sites, and/or the like.

According to some embodiments, a user may also be able to subscribe to aproduct list (e.g., the book list) created by another user, or acreator. As such, the user/subscriber of the book list may be notifiedwhen new book identifiers are added to the book list by the creator.Furthermore, the systems and methods described herein may be configuredto transmit one or more book recommendations (or other productrecommendations) to the subscriber based at least in part on informationassociated with the book lists. For instance, the one or more bookidentifiers included in the book list may belong to or may otherwise beassociated with a genre. Thus, the systems and methods described hereinmay be configured to transmit, to the subscriber, a recommendation topurchase a book that belongs to the genre. Additionally, recommendationsfor book lists (or other product lists) may also be transmitted to thesubscriber, such a recommendation for another book list generated by thesame creator. Furthermore, systems and methods described herein mayfacilitate searches for product lists using various search criteria. Itshould be noted that while certain aspects of the disclosure maydescribe product lists in terms of book lists and book identifiers (bothdigital copies and physical copies), such lists may encompass variousother types of products and/or areas of interest including, but notlimited to, fashion, electronic devices, restaurants, food, toys, and/orthe like.

According to one or more embodiments of the disclosure, a method isprovided. The method may include determining, by a server comprising oneor more processors, user profile information for a user, the userprofile information for a user. The user profile information mayindicate a book list to which the user is subscribed. The method mayalso include accessing the book list, wherein the book list comprisesone or more book identifiers, a creator identifier for a creator of thebook list, and a genre identifier. Furthermore, the method may includegenerating a recommendation for the user to purchase a book that isclassified by the genre identifier. Additionally, the method may includetransmitting, to the user, the recommendation to purchase the book. Themethod may also include receiving a request from the creator to add anew book identifier to the book list, and determining, in response tothe request from the creator, whether to add the new book identifier tothe book list. The method may further include transmitting, to the userupon a positive determination to add the new book identifier to the booklist, a notification comprising the new book identifier.

According to one or more other embodiments of the disclosure, a userdevice is provided. The user device may include at least one memory forstoring data and computer-executable instructions. Additionally, theuser device may also include at least one processor to access the atleast one memory and to execute the computer-executable instructions.Furthermore, the at least one processor may be configured to execute theinstructions to access a product list, the product list comprising oneor more product identifiers, a subscriber identifier, a categoryidentifier, and a creator identifier for a creator of the product list.The at least one processor may also be configured to execute theinstructions to determine, based at least in part on the subscriberidentifier, a subscriber of the product list. Additionally, the at leastone processor may be configured to execute the instructions to generatea recommendation for the subscriber to purchase a product associatedwith the category identifier and transmit, to the subscriber, therecommendation to purchase the product.

According to one or more embodiments of the disclosure, a non-transitorycomputer-readable medium is provided. The non-transitorycomputer-readable medium may have embodied thereon instructionsexecutable by one or more processors. The instructions may cause the oneor more processors to receive, from a user, one or more search criteriaincluded in a search request. Furthermore, the instructions may causethe one or more processors to determine, based at least in part on theone or more search criteria in the search request, a product listcomprising one or more product identifiers and a creator identifierassociated with a creator of the product list. Additionally, theinstructions may cause the one or more processors to receive, from theuser, a subscription request for the product list and store, in responseto the subscription request, an association between a user profile ofthe user and the product list, the association indicating the user'ssubscription to the product list.

With reference now to FIG. 1, a system 100 for managing product listsubscriptions is shown according to one or more embodiments of thedisclosure. The system 100 may include one or more user device(s) 102.In general, the user device 102 may refer to any type of electronicdevice, and, more particularly, may refer to one or more of thefollowing: a wireless communication device, a portable electronicdevice, a telephone (e.g., cellular phone, smart phone), a computer(e.g., laptop computer, tablet computer), a wearable computer device, aportable media player, a personal digital assistant (PDA), or any otherelectronic device having a networked capability. The user device(s) 102may include one or more computer processors 104, a memory 106 storing anoperating system 108 and a product list application 110, network and I/Ointerfaces 112, and a display 114. In certain embodiments, the userdevice(s) 102 may include one or more sensors capable of gatheringinformation associated with a present environment of the user device(s)102, or similar hardware devices, such as a camera, microphone, antenna,or Global Positioning Satellite (GPS) device.

The computer processors 104 may comprise one or more cores and may beconfigured to access and execute (at least in part) computer-readableinstructions stored in the memory 106. The one or more computerprocessors 104 may include, without limitation: a central processingunit (CPU), a digital signal processor (DSP), a reduced instruction setcomputer (RISC), a complex instruction set computer (CISC), amicroprocessor, a microcontroller, a field programmable gate array(FPGA), or any combination thereof. The user device 102 may also includea chipset (not shown) for controlling communications between the one ormore processors 104 and one or more of the other components of the userdevice 102. In certain embodiments, the user device 102 may be based onan Intel® architecture or an ARM® architecture, and the processor(s) andchipset may be from a family of Intel® processors and chipsets. The oneor more processors 104 may also include one or more application-specificintegrated circuits (ASICs) or application-specific standard products(ASSPs) for handling specific data processing functions or tasks.

The memory 106 may comprise one or more computer-readable storage media(CRSM). In some embodiments, the memory 106 may include non-transitorymedia such as random access memory (RAM), flash RAM, magnetic media,optical media, solid state media, and so forth. The memory 106 may bevolatile (in that information is retained while providing power) ornon-volatile (in that information is retained without providing power).Additional embodiments may also be provided as a computer programproduct including a transitory machine-readable signal (in compressed oruncompressed form). Examples of machine-readable signals include, butare not limited to, signals carried by the Internet or other networks.For example, distribution of software via the Internet may include atransitory machine-readable signal. Additionally, the memory 106 maystore an operating system 108 that includes a plurality ofcomputer-executable instructions that may be implemented by the computerprocessor to perform a variety of tasks to operate the interface(s) andany other hardware installed on the user device 102. The memory 106 mayalso store content that may be displayed by the user device 102 ortransferred to other devices (e.g., headphones) to be displayed orplayed by the other devices. The memory 106 may also store contentreceived from the other devices. The content from the other devices maybe displayed, played, or used by the user device 102 to perform anynecessary tasks or operations that may be implemented by the computerprocessor or other components in the user device 102. Furthermore, thememory 106 may store a product list application 110 to facilitatemanaging and subscribing to one or more product lists, as described inmore detail below.

The network and I/O interfaces 112 may also comprise one or morecommunication interfaces or network interface devices to provide for thetransfer of data between the user device 102 and another device (e.g.,network server) via a network (not shown). The communication interfacesmay include, but are not limited to: personal area networks (PANs),wired local area networks (LANs), wireless local area networks (WLANs),wireless wide area networks (WWANs), and so forth. The user device 102may be coupled to the network via a wired connection. However, thewireless system interfaces may include the hardware and software tobroadcast and receive messages either using the Wi-Fi Direct Standard(see Wi-Fi Direct specification published in October 2010) and/or theIEEE 802.11 wireless standard (see IEEE 802.11-2007, published Mar. 8,2007; IEEE 802.11n-2009, published October 2009), or a combinationthereof. The wireless system (not shown) may include a transmitter and areceiver or a transceiver (not shown) capable of operating in a broadrange of operating frequencies governed by the IEEE 802.11 wirelessstandards. The communication interfaces may utilize acoustic, radiofrequency, optical, or other signals to exchange data between the userdevice 102 and another device such as an access point, a host computer,a server, a router, a reader device, and the like. The network mayinclude, but is not limited to: the Internet, a private network, avirtual private network, a wireless wide area network, a local areanetwork, a metropolitan area network, a telephone network, and so forth.

The display 114 may include, but is not limited to, a liquid crystaldisplay, a light-emitted diode display, an E-Ink™ display as made by EInk Corp. of Cambridge, Mass., or any other similar type of outputdevice. The display 114 may be used to show content to a user in theform of text, images, or video. In certain instances, the display 114may also operate as a touch screen display that may enable the user toinitiate commands or operations by touching the screen using certainfinger or hand gestures.

According to one or more embodiments, the user device 102 may be incommunication, via one or more networks 116, with one or more serviceprovider server(s) 118. As used herein, unless otherwise specified, theterm “server” may refer to any computing device having a networkedconnectivity and configured to provide one or more dedicated services toclients, such as a user device 102. The services may include storage ofdata or any kind of data processing. One example of the server mayinclude a web server hosting one or more web pages. Some examples of webpages may include social networking web pages and/or social mediawebsites. Another example of a server may be a cloud server that hostsweb services for one or more computer devices.

As such, the service provider server(s) 118 may include one or moreprocessors 120 and a memory 122. As such, the memory 122 may store anoperating system 124, a recommendation module 126, a product listgeneration module 128, a product list search module 130, and asubscription module 132. In addition, the service provider server(s) 118may also include network and I/O interfaces 134, a display 136, andstorage 138.

Furthermore, as shown in the embodiment of FIG. 1, a database 140 can beaccessible by the user devices 102 and/or service provider computers 118via the network(s) 116. The database 140 can include any type of datastorage device and/or any number of data storage devices.

Thus, in some embodiments, the product list application 110 included inthe user device 102 may facilitate creation and management of productlists and subscriptions to the product lists. In some implementations,the product list application 110 may be a dedicated application on theuser device 102 and may communicate with various components in theservice provider server(s) 118 (e.g., recommendation module 126, productlist generation module 128, and/or product list search module 130). Inother implementations, instead of the product list application 110, auser may interface with a web browser (not pictured) included on theuser device 102 to communicate with the various modules of the serviceprovider server 118. For example, the web browser may be configured topresent a web page (e.g., served by the service provider server 118 oranother server) to the user. The web page may include a user interfacein which the user may be able to input information used to create and/ormanage product lists. It should be understood that the functionalityprovided by the product list application 110 and the above modules maybe distributed variously among the user device(s) 102, the serviceprovider server(s) 118, other third-party devices, and/or anycombination thereof.

As mentioned above, the product list application 110 may be configuredto create one or more product lists. A product list may include, store,display, or may be otherwise associated with one or more productidentifiers. These product identifiers may correspond to, point to,and/or otherwise represent actual products for sale, such as by aservice provider of the service provider server(s) 118. Thus, accordingto some implementations, a product list may be generally construed as acollection of product identifiers, though the product list may storeother information as well, as will be described below and with referenceto FIGS. 1 and 2. In certain embodiments, the user device(s) 102,service provider server(s) 118, and/or any other component of the system100 may be configured to display the product list, the included productidentifiers, images of the actual products, and/or any other informationincluded in the product list. In certain embodiments, a product list maybe a book list associated with one or more book identifiers pointing toor otherwise indicating actual books for sale. Furthermore, while thedescription may refer to product lists as books lists in some exemplaryembodiments, it will be appreciated that other types of product listsare also possible.

According to certain embodiments, the product list application 110 mayreceive a request (e.g., from a user/creator) to generate a productlist. In some implementations, in order for users/creators to generate aproduct list, the users/creators must be enrolled and/or registered witha service for managing product list subscriptions. Such a service may beprovided by an online merchant, owner, and/or any other service providerthat may operate, own, or otherwise be associated with the serviceprovider server(s) 118. Furthermore, the service may enable a userprofile to be stored and/or associated with an enrolled user, and theuser profile may include a unique user identifier for the enrolled user.User profiles and information associated with user profiles may bediscussed in more detail with reference to FIG. 2 below.

Continuing with the product list application 110, in response to therequest to generate a product list, the product list application 110,the service provider server 118, and/or another entity included in thesystem 100 may prompt the user/creator, such as via a user interface(not pictured), to enter certain information. In some embodiments, thisinformation may be transmitted to the product list generation module 128associated with the service provider server(s) 118. To this end, theproduct list generation module 128 may be configured to create and/orgenerate, based at least in part on the above information, a productlist for the creator. The above information may include, but is notlimited, a creator identifier for the creator (e.g., the creatoridentifier may point to the unique user identifier of the creator),contact information of the creator, one or more product identifiers,product categories in which the product identifiers may belong, messagesto potential subscribers/followers, and/or other types of information.Thus, once the product list has been generated, the product list maystore, include, and/or otherwise be associated with the aboveinformation. In some embodiments, certain restrictions may be associatedwith the creation and/or management of the product lists. For instance,the creator may be limited in adding a number of product identifierscorresponding to free products to the product list. For example, for aparticular product list such as a book list, the number of bookidentifiers corresponding to free books that the user may be allowed toinclude in the book list may be limited by a predetermined thresholdand/or predetermined threshold ratio. To this end, the predeterminedthreshold may be a predefined number of book identifiers correspondingto a number of free books, for example, 10 free books. Likewise, thepredetermined threshold ratio may include a ratio of a number of bookidentifiers corresponding to free books and a number of book identifierscorresponding to priced books. In certain examples, a predeterminedthreshold ratio may be 1:1, but it will be appreciated that any otherratios may also be acceptable. As another example, a user/creator may berestricted to adding product identifiers corresponding to actualproducts that have been purchased by the user and/or stored on the userdevice(s) 102. For instance, a user/creator may be associated with ane-book reader having stored thereon certain e-books. As such, increating a book list, the user/creator may only be allowed to add bookidentifiers corresponding to e-books stored on the e-book reader.

In any instance, once the product list has been generated, the productlist generation module 128 may be configured to store the product listin the database 140, the service provider server(s) 118, the userdevice(s) 102, and/or any other storage locations. Furthermore, once theproduct list has been generated, the product list application 110 mayenable the creator to add one or more product identifiers to the productlist. For example, the user may request (e.g., via a user interface) toadd a new product identifier to the product list. The product listapplication 110 may receive the request and may be configured todetermine a ratio, for book identifiers included in the product list,between a number book identifiers corresponding to free books and anumber of book identifiers corresponding to paid books. As such, theproduct list application 110 may determine whether this ratio exceedsthe above mentioned predetermined threshold ratio. As one exampleembodiment, upon a positive determination that the ratio exceeds thepredetermined threshold ratio, the product list application 110 maytransmit a notification to the creator. The notification may indicate anover-threshold violation and may also indicate a rejection of therequest to add the new product identifier. Alternatively, upon anegative determination that the ratio does not exceed the predeterminedthreshold ratio, the product list application 110 may transmit the newproduct identifier to the product list generation module 128. To thisend, the product list generation module 128 may be configured to add thenew product identifier to the product list.

In some embodiments, the product list application 110 and/or the productlist generation module 128 may enable a creator to share a product list.For example, the product list application 110 and/or the product listgeneration module 128 may be configured to generate a hyperlinkassociated with the product list. When the hyperlink is selected, suchas via a web browser on a user device 102, the user device 102 may beconfigured to display, on a web page, the product list, product listidentifiers, images associated with the product list identifiers and/orwith actual products, creator identifiers, and/or any other informationincluded in the product list. As will be appreciated by one or ordinaryskill in the art, the user, client device 102, and/or service providercomputer 118 may be able to share the hyperlink with one or more otherusers using various communication interfaces and/or providing thehyperlink to one or more application programming interfaces (APIs),programs, social media sites, and/or the like.

Additionally, while FIG. 1 illustrates the database 140 as a stand-alonecomponent, it should be understood that the database 140, and/or aportion thereof, may also be included within the service providerserver(s) 118, the user device(s) 102, and/or any other device.Furthermore, the database 140 may be configured to store a wide varietyof information related to product lists, such as user identifiers,creator identifiers, subscriber identifiers and/or the like. Thus, incertain embodiments, the database 140 may be searched to retrieve,receive, determine, and/or otherwise access information related toproduct lists.

According to one or more example embodiments, the product listapplication 110 may also be configured to facilitate searches forproduct lists and/or any other information included in and/or otherwiseassociated with product lists. Broadly, these searches may be performedaccording to various search criteria including, but not limited to, aproduct category, a product list identifier, a creator identifier, asubscriber identifier, a number of subscriptions, and/or any other typesof information that may be stored in or otherwise be associated with aproduct list. Examples of such information are described in more detailbelow with reference to FIG. 2. As one example, the product listapplication 110 may be configured to access and/or receive searchcriteria (e.g., from the user device(s) 102). The product listapplication 110 may then transmit the search criteria to the productlist search module 130. As such, the product list search module 130 maybe configured to access the database 140 and/or any other data storagedevice where product lists may be stored. The product list search module130 may also be configured to identify a product list that includesinformation matching and/or otherwise corresponding to the searchcriteria. Furthermore, the product list search module 130 may return ortransmit any identified product lists to the user, via the user device102, as search results. Additionally, the product list search module 130may present the user, via the user device 102, with an option ofsubscribing to any of the product list search results.

As one example, the product list application 110 may facilitate aproduct list search according to a creator identifier by way of receiptof corresponding user input via a user device 102 (e.g., a user may wishto search for product lists generated by particular creators, such as anotable person, celebrity, friend, and/or the like). As such, thecreator identifier may include any information that can be used toascertain a creator, such as a string of characters, an identificationnumber, and/or the like. For instance, a user may wish to discover booklists created by Phil Jackson. Thus, the user may input the string “PhilJackson” as a search parameter to the product list application 110,which may provide the string to the product list search module 130. Inresponse, the product list search module 130 may perform a search of thedatabase 140 and/or any other data storage device, and provide the userwith any product lists, including any book lists, associated with acreator identifier matching the string “Phil Jackson.” To this end, theuser may be provided the option (e.g., via the user device 102) ofsubscribing to one or more of the resulting product lists.

As another example, the product list application 110 may facilitate asearch for product lists that belong to a particular category/categoryidentifier. As such, a category/category identifier may include anyinformation that can be used to ascertain a category, such as a stringof characters, an identification number, and/or the like. To this end, aproduct list may belong to a particular category if one or more productidentifiers included in the product list belong to that particularcategory. For instance, the user may wish to search for book lists thatbelong to the “Fantasy” genre. Thus, the user may input the string“Fantasy,” which may be received by the product list application 110.The product list application 110 can transmit the string to the productlist search module 130, which may be configured to search the database140 and/or any other data storage device for a book list which belongsto a genre matching the string “Fantasy” (e.g., the book list includesone or more book identifiers which belong to the “Fantasy” genre). Tothis end, the user may be provided the option (e.g., via a user device102) of subscribing to one or more of the resulting book lists.

While the product list application 110 and/or the product list searchmodule 130 may facilitate searching for product lists based on differentcriteria, it should be noted that the system 100 may also be configuredto enable the user to browse for product lists as well (e.g., by creatoridentifiers, category identifiers, and/or any other information storedin or otherwise associated with product lists). Furthermore, it shouldalso be noted that a product list can belong to and/or may otherwise beassociated with multiple category identifiers. For example, consider ascenario in which the product list is a book list. With respect to abook list, product identifiers may be referred to as book identifiersand category identifiers may be referred to as genre identifiers. Thisend, the book list may include a first book identifier that belongs to a“Fiction” genre identifier and a second book identifier that belongs toa “Literature” genre identifier. Accordingly, genre identifiers includedin the book list may indicate or otherwise be associated with the“Fiction” and “Literature” genre identifiers.

According to one or more embodiments, the product list application 110may also facilitate user subscriptions to one or more product lists. Forinstance, a user may indicate, to the product list application 110, arequest to subscribe to a product list. Such a request may betransmitted to the subscription module 132, which may be configured tostore a subscription association between the user and the product list.Such an association may be accomplished by storing a subscriberidentifier in the product list. The subscriber identifier may be a copyof a unique user identifier for the user; alternatively the subscriberidentifier may be a pointer to the unique user identifier for the user.It will be appreciated that the subscriber identifier and/or the uniqueuser identifier for the user may be stored elsewhere from the productlist, such as the user device 102, service provider server 118, database140, and/or any other data storage device. Thus, each subscription to aproduct list by respective users may result in the association ofrespective subscriber identifiers of those users to the product list.

Furthermore, the subscription module 132 may also be configured totransmit/communicate, to subscribers of a product list, updates, alerts,notifications and/or the like. In some embodiments, such notificationsmay indicate one or more new product identifiers added to the productlist (e.g., by the creator of the product list). For example, a user maybe subscribed to a book list. At a certain point in time while the useris subscribed to the book list, the creator of the book list may add anew book identifier to the book list. As such, the subscription module132 may receive an indication of the new book identifier (e.g., from theproduct list generation module 128). Alternatively, the subscriptionmodule 132 may be configured to monitor product lists periodically todetermine whether new product identifiers are added to product lists.Continuing with reference to the new book identifier, the subscriptionmodule 132 may generate a notification that may include or thatotherwise be associated with the new book identifier. As such, thesubscription module 132 may transmit the notification to the user and/orother subscribers of the book list. It will be appreciated that variousparameters with respect to the notifications (e.g., frequency and/ormethod of communication such as email, text, etc.) may be configurableby a user via the user device 102.

Moreover, in certain implementations, in addition to notifyingsubscribers of a new product identifier added to a product list, theproduct list application 110 and/or the subscription module 132 may alsofacilitate automatic purchase transactions, on behalf of thesubscribers, for the product corresponding to the new productidentifier. It will be appreciated that such automatic purchasetransactions may be presented as an option (e.g., via a user device 102)that may be configurable for each subscriber/user. As used herein, anautomatic purchase transaction may refer to a purchase transaction for aproduct that is generated on behalf of a user without a request from theuser to purchase that product. In some implementations, productspurchased via such an automatic purchase transaction may be performed ata discount relative to a normal purchase transaction for the product. Insome implementations, before generating an automatic purchasetransaction on behalf of a user/subscriber for the product correspondingto the new product identifier, the subscription module 132 may also beconfigured to determine whether the user/subscriber already owns and/orhas already purchased the product. Upon a negative determinationthereof, that is, it is determined that the user/subscriber does not ownand/or has not purchased the product, the subscription module 132 may beconfigured to proceed with generating the automatic purchase transactionfor the product. Upon a positive determination thereof, that is, it isdetermined that the user/subscriber owns and/or has already purchasedthe product, the subscription module 132 may not generate the automaticpurchase transaction. Instead, the subscription module 132 may beconfigured to transmit, to the user/subscriber, a notificationindicating that the user/subscriber already owns and/or has previouslypurchased the product corresponding to the new product identifier.

In yet other implementations, automatic purchase transactions for auser/subscriber may be restricted according to a predetermined thresholdratio between a first number of product identifiers corresponding tofree products and a second number of product identifiers correspondingto priced products. For example, before generating an automatic purchasetransaction for a product on behalf of a user/subscriber, thesubscription module 132 may be configured to examine a purchase historyof the user/subscriber with respect to automatic purchase transactions.As such, the subscription module 132 may be configured to determinewhether the predetermined threshold ratio has been exceeded for theuser/subscriber. Upon a negative determination thereof, that is, thepredetermined threshold ratio has not been exceeded, the subscriptionmodule 132 may be configured proceed with generating the automaticpurchase transaction for the product. Upon a positive determinationthereof, that is, the predetermined threshold ratio has been exceeded,the subscription module 132 may not generate the automatic purchasetransaction. Instead, the subscription module 132 may be configured totransmit, to the user/subscriber, a notification indicating that thepredetermined threshold ratio has been exceeded for the user/subscriber.In addition, the notification may indicate that the automatic purchasetransaction for the product has therefore been rejected.

In addition, it will be appreciated that the product list application110, subscription module 132, and/or any other components of the system100 may be configured to provide the user with various selectablepreference options (e.g., via a user device 102) associated with productlist subscriptions. For example, one option may enable the user toselect notification frequencies (e.g., how often the user is notified)regarding new product identifiers added to the user's respectivesubscribed product lists. Another option may enable the user to select anumber of new product identifiers that may be included in eachnotification. For example, the user may select an option to be notifiedonce per week of a maximum of five new product identifiers. Anotheroption may enable the user to choose one or more types of communicationswith which to receive notifications, such as email, text messaging,instant messaging, tweets, and/or the like. Yet another option mayenable the user to select whether to participate in automatic purchasetransactions for products corresponding to new product identifiers addedto subscribed product lists. Another option may enable the user to setany upper and/or lower price limits with respect to automatic purchasetransactions. In certain implementations, the user may individuallyset/select options for automatic purchase transactions for eachsubscribed product list. It should be noted that the above describedoptions are merely exemplary, and that other numerous other types ofoptions are also contemplated within the disclosure.

According to one or more embodiments, the service provider server(s) 118may also include a recommendation module 126 to facilitate generatingand transmitting recommendations to a user/subscriber. In certainimplementations, the recommendation module 126 may be configured togenerate recommendations to the user/subscriber based at least in parton respective product lists to which the user/subscriber may besubscribed. For instance, the product list application 110 and/or therecommendation module 126 may be configured to access a user profileassociated with the user/subscriber. The user profile may storeinformation indicating a product list to which the user/subscribermaintains a subscription. To this end, the recommendation module 126 maybe configured to determine one or more category identifier(s) includedin the product list. Based on the category identifier(s), therecommendation module 126 may generate and/or transmit one or morerecommendations to the user. For example, the recommendation module 126may determine that a user/subscriber is subscribed to a book list thatincludes, belongs to, is classified under, and/or or is otherwiseassociated with a “Fantasy” genre identifier. Based at least in part onthe user's/subscriber's subscription to the book list, therecommendation module 126 may be configured to transmit a recommendationfor the user/subscriber to purchase another book that belongs to the“Fantasy” genre identifier. Additionally or alternatively, therecommendation module 126 may also be configured to generate/transmit,to the user, a recommendation to subscribe to another book list thatincludes, belongs to, or is otherwise associated with the “Fantasy”genre identifier.

In other embodiments, the recommendation module 126 may be configured togenerate recommendations based on a creator identifier included in theproduct list. As previously discussed, the creator identifier mayinclude any information that can be used to ascertain a creator, such asa string of characters, an identification number, and/or the like. Tothis end, the recommendation module 126 may be configured to determineand/or identify (e.g., via the product list search module 130) anotherbook list that includes the creator identifier. For instance, a user maybe subscribed to a book list, which is associated with a creatoridentifier corresponding to “Phil Jackson”. The recommendation module126 may be configured to determine and/or identify (e.g., via theproduct list search module 130) a second book list that includes or isotherwise associated with the creator identifier corresponding to “PhilJackson.” As such, the recommendation module 126 may generate and/ortransmit a recommendation to a user device 102 for the user to subscribeto the second book list.

According to other embodiments, the recommendation module 126 may alsobe configured to generate recommendations based at least in part onsensor data received from the user device(s) 102. For instance, the userdevice(s) 102 may include one or more sensors (not pictured) capable ofgathering information associated with a present environment of the userdevice(s) 102. For example, the user device 102 may be configured toobtain sensor data including, but not limited to, image data, audiodata, location data, and/or the like associated with a presentenvironment. The sensor data may be generated via various sensors (e.g.,camera, microphone, antenna, Global Positioning Satellite (GPS) device,etc.), and input to the user device via one or more network and I/Ointerfaces 112. To this end, the product list application 110 may beconfigured to access the sensor data and transmit the sensor data to therecommendation module 126. Furthermore, the recommendation module 126may identify a product list to which a user of the user device 102 issubscribed. Based at least in part on the sensor data and product list,the recommendation module may generate and/or transmit one or morerecommendations to the user. For instance, the recommendation module 126may receive location data via a user device 102 of the user.Additionally, the recommendation module 126 may determine that the useris subscribed to one or more book lists. Furthermore, the location datamay indicate that one or more book stores are located relatively nearbyto the user. Thus, the recommendation module 126 may generate one ormore recommendations and transmit the recommendations to the user device102 for the user to view and subsequently visit the book stores.

It should be noted that the recommendation module 126 is not limited toany particular framework for generating and/or transmittingrecommendations and that the above descriptions are merely exemplary.Furthermore, the recommendation module 126 may be capable of generatingand/or transmitting a wide variety of recommendations including, but notlimited to, product recommendations, product list recommendations,product list creator recommendations, recommendations to subscribe tobook lists created by particular users, and/or the like. Additionally,the recommendation module 126 may generate and/or transmitrecommendations based on a wide range of different criteria such as auser's purchase history, a user's browsing history, and other types ofdata related to the user.

Turning now to FIG. 2, a block diagram 200 is provided that illustratesone or more relationships for managing product list subscriptions inaccordance with one or more example embodiments. The block diagram 200may illustrate relationships between a user/subscriber 202A, auser/creator 202B, their respective user profiles 204A, 204B, and one ormore product lists 210A-210N, It will be appreciated that the componentsillustrated in the block diagram may be stored in any combination of theuser device(s) 102, service provider server(s) 118, database 140, and/orany other data storage devices.

In certain embodiments, the user/subscriber 202A and user/creator 202Bmay be associated with respective user profiles 204A, 204B. Each userprofile 204A, 204B may include respective unique user identifiers 206A,204B for their respective users 202A, 202B, created product listinformation 207A, 207B, and subscription information 208A, 208B. Aspreviously discussed, a user profile such as 204A may be associated witha particular user such as 202A upon the user's 202A enrollment in aservice for managing product list subscriptions. This service may beprovided by an online merchant, owner, and/or any other service providerassociated with the service provider server(s) 118. To this end, a userprofile such as 204A may store a unique user identifier such as 206A inorder to distinguish the user 202A from other users, such as 202B.

According to one or more embodiments, the created product listinformation 207A, 207B may indicate any product lists that have beencreated by a particular user such as 202B. As shown in FIG. 2, theuser/creator 202B may be the creator of a particular product list suchas 210A. To this end, the created product list information 207B maypoint to, indicate, and/or otherwise be associated with the product list210A. Thus, the product list application 110 and/or any of the modulesincluded in the service provider server(s) 118 may be configured toaccess the created product list information such as 207B to determineand/or identify any number of product list(s) such as 210A-210N createdby the user such as 202B. Furthermore, though not specificallyillustrated in FIG. 2, it will be appreciated that created product listinformation 207A, 207B may include pointers to or may otherwise beassociated with one or more product lists 210A-210N.

Additionally, the user profile such as 204A may include subscriptioninformation such as 208A indicating product list(s) such as 210A towhich the user such as 202A may be subscribed. As shown in FIG. 2, theuser/subscriber 202A may be subscribed to product list 210A, while theuser/creator 202B may be subscribed to product lists 210B-210N. Thus, inorder to represent these subscription relationships, the subscriptioninformation 208A, included in the user profile 204A, may include apointer to, may indicate, and/or may otherwise be associated with theproduct list 210A. Similarly, the subscription information 208B,included in the user profile 204B, may include respective pointers to,may indicate, and/or may otherwise be associated with product lists210B-210N. However, it will be appreciated that the particularsubscription relationships illustrated in FIG. 2 are merely exemplary,and that the subscription information 208A, 208B may be associated withany number of product lists. Under this framework, in order to determinewhich respective product lists 210A-210N that a user 202A, 202B may besubscribed to, the product list application 110, the modules of theservice provider server(s) 118, and/or any combination thereof may beconfigured to access the subscription information 208A, 208B included inthe respective user profiles 204A, 204B.

According to certain implementations, the product list 210A may include,store, and/or otherwise be associated with a creator identifier 212, oneor more product identifier(s) 214, and/or one or more subscriberidentifier(s) 214. Similarly, the product lists 210B-210N may includelike components, respectively. The creator identifier 212 may beoperable to ascertain the creator of the product list 210A. Again, asshown in FIG. 2, the user/creator 202B may be the creator of productlist 210A. Thus, the creator identifier 212 may include a pointer to,may indicate, and/or may otherwise be associated with the unique useridentifier 206B. Alternatively, the creator identifier 212 may be a copyof the unique user identifier 206B. Thus, operations that facilitate thedetermination of the creator of the product list 210A, may access and/oranalyze the creator identifier 212 included in the product list 210A.

The product identifier(s) 214 may include pointers to or may indicate,represent, correspond to, and/or may otherwise be associated with actualproducts for sale by a service provider associated with the serviceprovider server(s) 118. Thus, broadly, a product list 210A-210N may begenerally construed as a collection of product identifiers 214. To thisend, the product list application 110 and/or the product list generationmodule 128 may enable the user/creator 202B to select the particularproduct identifier(s) 214 to be included in a particular product listsuch as 210A. Furthermore, after the product list 210A has been created,the product list application 110 and/or the product list generationmodule 128 may enable the user/creator 202B to add new productidentifiers to a particular product list such as 210A.

The subscriber identifier(s) 216 may include pointers to or mayindicate, represent, correspond to, and/or may otherwise be associatedwith respective subscribers of a particular product list such as 210A.As shown in FIG. 2, the user/subscriber 202A may be subscribed to theproduct list 210A. In order to indicate this subscription relationship,a subscriber identifier(s) 216 may include a pointer to the unique useridentifier 206A. Alternatively, the subscriber identifier(s) 216 mayinclude a copy of the unique user identifier 206A. It will beappreciated that the subscriber identifier(s) 216 may include multiplepointers to multiple users/subscribers. To this end, operations thatfacilitate the identification and/or determination of subscribers to aparticular product list such as 210A, may access and/or analyze thesubscriber identifier(s) 216 included in the product list 210A.

In certain embodiments, the product list such as 210A may also includecategory identifier(s) 218. For example, a product list such as 210A maybe arranged, grouped, classified, belong to, and/or otherwise beassociated with the various category identifiers 218. In certainimplementations, the category identifier(s) 218 may correspond to and/orindicate any categories that products of the product identifier(s) 214belong to. For example, a product list such as 210A can be a book list,which may include a product identifier 214, such as a book identifier.The product identifier may correspond to a book about basketball,classified (e.g., by the service provider of the service provider server118) under multiple categories, such as “book,” “sports,” and“paperback.” To this end, the category identifier(s) 218 of the productlist 210A may at least include, store, correspond to, or may otherwisebe associated with categories such as “book,” “sports,” and “paperback”categories.

It will be appreciated that any of the identifiers included in theproduct list 210A (e.g., creator identifier 212, product identifier(s)214, subscriber identifier(s) 216, and/or category identifier(s) 218)may include various types of data, such as a string of characters, anidentification number, and/or the like. Furthermore, it will beappreciated that the product list 210A may include product identifier(s)214 corresponding to various types of merchandise and/or articles, bothdigital and physical, including, but not limited to, books, electronicdevices, clothing, furniture, vehicles, hardware, tools, food and drink,and/or the like. With respect to books in particular, references toproduct lists may be referred to as book lists, references to productidentifier(s) 216 may be referred to as book identifier(s), andreferences to category identifier(s) 218 may be referred to as genreidentifier(s). Further still, it should be appreciated that the userprofiles 204A, 204B and/or the product lists 210A-210N are not limitedto the respective data and/or components illustrated in FIG. 2 and mayinclude fewer or more components in other implementations. For example,the product list 210A may include other additional information such asvarious counters corresponding to the number of product identifier(s)214 and/or subscriber identifiers(s) 216, popularity indices and otherrank information, multimedia data, and/or the like.

FIG. 3 illustrates a flow diagram of a method 300 for managing productlist subscriptions in accordance with one or more embodiments of thedisclosure. In block 310, a service provider server 118 may determine(e.g., via the subscription module 132) user profile information for auser, such as user/subscriber 202A. As such, the user profileinformation (e.g., the subscription information 208A included in arespective user profile 202A) may indicate a book list, similar toproduct list 210A, to which the user is subscribed.

In block 320, the service provider server 118 may access the book list.The book list may include one or more book identifiers, similar toproduct identifier(s) 214, a creator identifier 212 for a creator of thebook list and a genre identifier, similar to category identifier(s) 218.

In block 330, the service provider server 118 (e.g., via therecommendation module 126) may be configured to generate arecommendation via a user interface 102 for the user/subscriber 202A topurchase a book that belongs to a genre corresponding to the genreidentifier, and in block 340, the service provider server 118 maytransmit the recommendation to the user/subscriber 202A via the userdevice 102.

In block 350, the service provider server 118 may receive a request froma user, such as user/creator 202B (e.g., via the product list generationmodule 128) to add a new book identifier to the book list. In otherwords, the creator of the book list may wish to add a new book to thebook list. In response to the request, in block 360, the serviceprovider server 118 (e.g., via the product list generation module 120)may determine whether to add the new book to the book list. In certainembodiments, this determination may be performed with respect to acomparison between certain book identifiers included in the book list.For example, the product list generation module 128 may be configured todetermine a first number of book identifiers, included in the book list,that correspond to free books and a second number of book identifiers,included in the book list, that correspond to paid books. To this end,the product list generation module 128 may calculate a ratio of thefirst number of book identifiers to the second number of bookidentifiers and determine if this ratio exceeds a predeterminedthreshold ratio (e.g., 1:1).

In block 370, the service provider server 118 may transmit (e.g., viathe subscription module 132), to the user device 102 associated with theuser/subscriber 202A, upon a positive determination to add the new bookidentifier to the book list 210A, a notification comprising the new bookidentifier. Thus, the user/subscriber 202A may be informed that theuser/creator 202B successfully added the new book identifier to the booklist. In certain implementations, the positive determination to add thesecond book identifier may include a determination by the product listgeneration module 128 that the ratio of the first number of bookidentifiers to the second number of book identifiers does not exceed thepredetermined threshold ratio.

FIG. 4 illustrates a flow diagram of a method 400 for managing productlist subscriptions according to one or more embodiments of thedisclosure. In contrast to the method 300 of FIG. 3, which may begenerally directed to analyzing user profiles 202A, 202B, the method 400of FIG. 4 may be generally directed to analyzing product lists210A-210N.

The method 400 may begin in block 410 where a service provider server118 may access a product list, such as 210A. The product list 210A mayinclude one or more product identifiers 214, one or more subscriberidentifiers 216, one or more category identifiers 218, and a creatoridentifier 212 for a creator of the product list 210A. In block 420, theservice provider server 118 may determine, based at least in part on theone or more subscriber identifiers 216, a subscriber of the product list210A. In block 430, the service provider server 118 may generate arecommendation for the subscriber to purchase a product associated withthe one or more category identifiers 218. In block 440, the serviceprovider server 118 may be configured to transmit, to the subscriber viaa user device 102, the recommendation to purchase the product. It shouldbe noted that while FIG. 4 has been described with reference to theservice provider server 118 performing certain operations in blocks410-440, these operations may also be performed by the product listapplication 110, another third-party device, and/or any combinationthereof.

FIG. 5 illustrates a flow diagram of a method 500 for managing productlist subscriptions in accordance with one or more embodiments of thedisclosure. The method 500 may begin in block 510 where the product listapplication 110 may receive, from a user, such as 202A via a user device102, one or more search criteria associated with a search request. Inblock 520, the product list application 110 may determine, based atleast in part on the one or more search criteria, a product list such as210A. The product list such as 210A may include one or more productidentifiers 214, and a creator identifier 218 associated with a creatorof the product list 210A. In other words, the product list application110 may facilitate a search for one or more product lists such as 210Athat correspond to the search criteria input to the user device 102 bythe user.

In block 530, the product list application 110 may receive, from theuser, such as 202A via the user device 102, a subscription request forthe product list 210A. In block 540, the product list application 110may store, in response to the subscription request, an associationbetween a user profile of the user 202A and the product list 210A, theassociation indicating the user's subscription to the product list 210A.It should be noted that while FIG. 5 has been described with referenceto the product list application 110 performing certain actions, suchactions may also be performed by the service provider server(s) 118,another third-party device, and/or any combination thereof.

The operations and processes described and shown above may be carriedout or performed in any suitable order as desired in variousimplementations. Additionally, in certain implementations, at least aportion of the operations may be carried out in parallel. Furthermore,in certain implementations, less than or more than the operationsdescribed may be performed.

These computer-executable program instructions may be loaded onto aspecial-purpose computer or other particular machine, a processor, orother programmable data processing apparatus to produce a particularmachine, such that the instructions that execute on the computer,processor, or other programmable data processing apparatus create meansfor implementing one or more functions specified in the flow diagramblock or blocks. These computer program instructions may also be storedin a computer-readable storage media or memory that can direct acomputer or other programmable data processing apparatus to function ina particular manner, such that the instructions stored in thecomputer-readable storage media produce an article of manufactureincluding instruction means that implement one or more functionsspecified in the flow diagram block or blocks. As an example, certainimplementations may provide for a computer program product, comprising acomputer-readable storage medium having a computer-readable program codeor program instructions implemented therein, said computer-readableprogram code adapted to be executed to implement one or more functionsspecified in the flow diagram block or blocks. The computer programinstructions may also be loaded onto a computer or other programmabledata processing apparatus to cause a series of operational elements orsteps to be performed on the computer or other programmable apparatus toproduce a computer-implemented process such that the instructions thatexecute on the computer or other programmable apparatus provide elementsor steps for implementing the functions specified in the flow diagramblock or blocks.

Conditional language, such as, among others, “can,” “could,” “might,” or“may,” unless specifically stated otherwise, or otherwise understoodwithin the context as used, is generally intended to convey that certainimplementations could include, while other implementations do notinclude, certain features, elements, and/or operations. Thus, suchconditional language is not generally intended to imply that features,elements, and/or operations are in any way required for one or moreimplementations or that one or more implementations necessarily includelogic for deciding, with or without user input or prompting, whetherthese features, elements, and/or operations are included or are to beperformed in any particular implementation.

Many modifications and other implementations of the disclosure set forthherein will be apparent having the benefit of the teachings presented inthe foregoing descriptions and the associated drawings. Therefore, it isto be understood that the disclosure is not to be limited to thespecific implementations disclosed and that modifications and otherimplementations are intended to be included within the scope of theappended claims. Although specific terms are employed herein, they areused in a generic and descriptive sense only and not for purposes oflimitation.

What is claimed is:
 1. A method, comprising: determining, by a servercomprising one or more processors, user profile information for a firstuser; determining, using the user profile information, a book list towhich the first user is subscribed, wherein the book list is generatedby a second user; accessing the book list, wherein the book listcomprises one or more book identifiers of books in the book list, aplurality of subscriber identifiers for respective subscribers to thebook list, a creator identifier for the second user, and a genreidentifier, wherein the plurality of subscriber identifiers comprises auser identifier for the first user; generating a recommendation for thefirst user to purchase a book included in the book list using the one ormore book identifiers, wherein the book is classified by the genreidentifier; transmitting the recommendation to purchase the book;receiving a request from the second user to add a new book to the booklist, wherein the new book was not previously in the book list, therequest comprising a book identifier of the new book; determining thatthe book identifier of the new book is to be added to the book list; andtransmitting a notification comprising the book identifier to theplurality of subscriber identifiers; and automatically causing ashipment of the new book to an address associated with at least one ofthe plurality of subscriber identifiers after the new book is added tothe book list.
 2. The method of claim 1, further comprising: determiningthat the first user has not previously purchased the new book;generating an automatic purchase transaction for the new book on behalfof the first user.
 3. The method of claim 1, wherein determining thatthe book identifier of the new book is to be added to the book listfurther comprises: determining a first number of book identifiers,included in the book list, that correspond to free books; determining anew number of book identifiers, included in the book list, thatcorrespond to priced books; and determining whether a ratio of the firstnumber of book identifiers to the new number of book identifiers exceedsa predetermined threshold ratio.
 4. The method of claim 3, furthercomprising: generating, upon a determination that the ratio exceeds thepredetermined threshold ratio, a new notification, wherein the newnotification indicates a violation of the predetermined threshold ratioand a rejection of the creator request; and transmitting the newnotification to the second user.
 5. The method of claim 3, furthercomprising: determining that the ratio of the first number of bookidentifiers to the new number of book identifiers does not exceed thepredetermined threshold ratio; and transmitting the new notificationcomprising the book identifier.
 6. The method of claim 1, furthercomprising: identifying a new book list comprising a new creatoridentifier, the new creator identifier matching the creator identifierof the book list to which the first user is subscribed; transmitting anew recommendation for the user to subscribe to the new book list. 7.The method of claim 1, further comprising: causing a shipment of the newbook to an address associated with at least one of the plurality ofsubscriber identifiers.
 8. A device, comprising: at least one processor;at least one memory storing computer-executable instructions, that whenexecuted by the at least one processor, causes the at least oneprocessor to: access a product list, the product list comprising one ormore product identifiers, one or more subscriber identifiers ofrespective subscribers to the product list, a category identifier, and acreator identifier for a creator that generated the product list;determine, based at least in part on the one or more subscriberidentifiers, a subscriber of the product list; generate a recommendationfor the subscriber to purchase a product on the product list, whereinthe recommendation is for a product identifier of the one or moreproduct identifiers added to the product list by the creator; transmitthe recommendation to purchase the product; receive a request from thecreator to add a new product identifier to the product list; add the newproduct identifier to the product list; automatically cause a shipmentof a product associated with the new product identifier to an addressassociated with the subscriber after the new product identifier is addedto the product list; and transmit a notification comprising the newproduct identifier to the one or more subscriber identifiers indicatingthat the new product identifier has been added to the product list. 9.The device of claim 8, wherein the product list comprises at least oneof a book list, a fashion list, a vehicle list, an electronic devicelist, hardware list, food and drink list, or a toy list.
 10. The deviceof claim 8, wherein the instructions further cause the at least oneprocessor to: generate, upon a determination that the subscriber has notpreviously purchased a respective product indicated by the new productidentifier, an automatic purchase transaction for the respective producton behalf of the subscriber.
 11. The device of claim 8, wherein thecomputer-executable instructions to determine that the new productidentifier is to be added to the product list further comprisescomputer-executable instructions to: determine a first number of productidentifiers, included in the product list, that correspond to freeproducts; determine a new number of product identifiers, included in theproduct list, that correspond to priced products; and determine whethera ratio of the first number of product identifiers to the new number ofproduct identifiers exceeds a predetermined threshold ratio.
 12. Thedevice of claim 11, wherein the computer-executable instructions furthercause the at least one processor to: generate, upon a determination thatthe ratio exceeds the predetermined threshold ratio, a new notification,wherein the new notification indicates a violation of the predeterminedthreshold ratio and a rejection of the creator request to add the newproduct identifier; and transmit the new notification.
 13. The device ofclaim 11, wherein the computer-executable instructions to determine thatthe new product identifier is to be added to the product list comprisesinstructions to: determine that the ratio does not exceed thepredetermined threshold ratio; and transmit the new notificationcomprising the new product identifier.
 14. The device of claim 8,wherein the instructions further cause the at least one processor to:identify a second product list comprising a second creator identifierthat matches the creator identifier of the product list; transmit asecond recommendation for the subscriber to subscribe to the secondproduct list.
 15. A non-transitory computer readable medium comprisinginstructions that when executed by at least one processor, cause the atleast one processor to: receive, from a user, one or more searchcriteria included in a search request; determine, based at least in parton the one or more search criteria in the search request, a product listcomprising one or more product identifiers and a creator identifierassociated with a creator of the product list; receive, from the user, asubscription request for the product list; store, in response to thesubscription request, an association between a user profile of the userand the product list, the association indicating the user's subscriptionto the product list; receive a request from the creator to add a newproduct identifier to the product list; determine that the new productidentifier is to be added to the product list; and transmit anotification comprising the new product identifier to the userindicating that the new product identifier has been added to the productlist; and automatically cause a shipment of a product associated withthe new product identifier to an address associated with the user afterthe new product identifier is added to the product list.
 16. Thecomputer readable medium of claim 15, wherein the one or more productlists comprises at least one of a book list, a fashion list, a vehiclelist, an electronic device list, hardware list, food and drink list, ora toy list.
 17. The computer readable medium of claim 15, wherein thesearch criteria comprise at least one of a product category, a productlist identifier, a creator identifier, subscriber identifier, or anumber of subscriptions.
 18. The computer readable medium of claim 15,wherein the computer-executable instructions further cause the at leastone processor to: identify, based at least in part on the one or moreproduct identifiers, a product category; generate a recommendation forthe user to purchase a product associated with the product category; andtransmit the recommendation to purchase the product.
 19. The computerreadable medium of claim 15, wherein the instructions further cause theat least on processor to: generate, upon a determination that the userhas not previously purchased a respective product indicated by the newproduct identifier, an automatic purchase transaction for the respectiveproduct on behalf of the user.
 20. A method, comprising: accessing aproduct list, the product list comprising one or more productidentifiers, one or more subscriber identifiers, a category identifier,the product list associated with a creator identifier indicative of acreator of the product list; determining, based at least in part on theone or more subscriber identifiers, a subscriber of the product list;generating a recommendation for the subscriber to purchase a productassociated with the category identifier, wherein the product is selectedfrom the one or more product identifiers; transmitting therecommendation to purchase the product; receiving a request from thecreator to add a new product identifier to the product list; adding thenew product identifier to the product list; automatically causing ashipment of a product associated with the new product identifier to anaddress associated with the subscriber after the new product identifieris added to the product list; and transmitting a notification comprisingthe new product identifier to the subscriber indicating that the newproduct identifier has been added to the product list.
 21. The method ofclaim 20, further comprising: generating, upon a determination that thesubscriber has not previously purchased a respective product indicatedby the new product identifier, an automatic purchase transaction for therespective product on behalf of the subscriber.
 22. The method of claim20, wherein determining whether to add the new product identifier to theproduct list further comprises: determining a first number of productidentifiers, included in the product list, that correspond to freeproducts; determining a new number of product identifiers, included inthe product list, that correspond to priced products; and determiningwhether a ratio of the first number of product identifiers to the newnumber of product identifiers exceeds a predetermined threshold ratio.23. The device of claim 22, further comprising: generating, upon adetermination that the ratio exceeds the predetermined threshold ratio,a new notification, wherein the new notification indicates a violationof the predetermined threshold ratio and a rejection of the creatorrequest to add the new product identifier; and transmitting the newnotification.